#pragma once
#ifndef SMPPTLV_HPP
#define SMPPTLV_HPP

#include "SMPPConstants.hpp"

using namespace smpp::constants;

namespace smpp{
namespace pdu{

class SMPP_DLLPRFX TLV{
public:
	TLV(const quint16 nTag = 0,const quint16 nLength = 0);

	TLV(const TLV &);

	bool operator ==(const TLV &) const;

	bool operator !=(const TLV &) const;

	TLV &operator = (const TLV &);

	void setTag(const quint16);

	const quint16 getTag() const;

	void setLength(const quint16);

	const quint16 getLength() const;
protected:
	quint16 _Tag;
	quint16 _Length;
};

}
}

#endif
